package com.ysq.controller.result;

import lombok.Data;

import java.util.HashMap;
import java.util.Map;

/**
 * ClassName: Result
 * Package: com.ysq.controller.result
 * Description:
 *
 * @Author YSQ
 * @Create 2023/1/2 - 8:42
 */
@Data
public class Result<T> {
    private Integer code; //编码：1成功，0和其它数字为失败
    private String msg; //错误信息
    private T data; //数据
    private Map map = new HashMap(); //动态数据

    //如果操作成功就可以直接通过这个方法返回一个Result对象 其code为1
    public static <T> Result<T> success(T object) {//传入数据对象
        Result<T> r = new Result<T>();
        r.data = object;
        r.code = 1;
        return r;
    }
    //如果操作失败就可以直接通过这个方法返回一个Result对象 其code为0
    public static <T> Result<T> error(String msg) {//传入报错信息
        Result r = new Result();
        r.msg = msg;
        r.code = 0;
        return r;
    }
    public Result<T> add(String key, Object value) {
        this.map.put(key, value);
        return this;
    }
}
